
public class TodoAppService
{
    private readonly IEnumerable<EleTodo> _todos;

    public TodoAppService(IEnumerable<EleTodo> todos)
    {
        _todos = todos;
    }

    public IEnumerable<EleTodo> FilterTodos(string? name, string? remark = null, TodoStatus? status =null)
    {
        var specification = new TodoNameRemarkStatusFiltereSpecification(name, remark, status);
        var filteredTodos = _todos.Where(specification.ToExpression().Compile()).ToList();
        return filteredTodos;
    }
}

